home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 002 / bluebery.arc / WORKFILE.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1985-06-29  |  13.5 KB  |  540 lines

  1. 5  CLS:KEY OFF:SCREEN 0,0,0:WIDTH 80:CLEAR:FOR I=1 TO 10:KEY I,"":NEXT:KEY 2,"GOTO 60"+CHR$(13):KEY 10,"RUN"+CHR$(34)+"BLUEMENU"+CHR$(34)+CHR$(13):LIST 10-57
  2. 12  '***************** GENERAL LEDGER ENTRY WORKSHEET **************************
  3. 16  'KEYTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENCLOSE
  4. 18  'OPEN        GENERAL LEDGER WORKFILE ENTRY SHEET WITH MONTH SORT              OPEN
  5. 20  'OPEN                                                                         OPEN
  6. 22  'OPEN    This program provides a formatted Record Form for General Ledger or  OPEN
  7. 24  'OPEN daily journal input. The file can be saved under your FILESPEC$.  A     OPEN
  8. 26  'OPEN sample file for retrieval, printing and review is named WORKFILE.DAT.   OPEN
  9. 28  'OPEN You may request a sequential printout or a printout by month. It is     OPEN
  10. 31  'OPEN necessary that you input the month with three letters since the print   OPEN
  11. 33  'OPEN sort looks for the first three letters of the month name; i.e., Jan,    OPEN
  12. 34  'OPEN Feb, Mar, etc.  The account numbers for DEBIT or CREDIT are entered     OPEN
  13. 36  'OPEN at the same time; i.e.; 23,45, otherwise you will get an error.  The    OPEN
  14. 37  'OPEN program is listed in expanded form ON THE 360K DISK for users to ex-    OPEN
  15. 38  'OPEN tract routines for their use. In order to run in 64K on this disk, the  OPEN
  16. 39  'OPEN DIM statements in line 140 are lowered to 270.  You may wish to state   OPEN
  17. 40  'OPEN 300 or higher for normal use.  This program may be used in whole or in  OPEN
  18. 41  'OPEN part without attribution or license.                                    OPEN
  19. 42  'OPEN                          (c) G I N A C O -- 1983     Ver 5.1/160/320    OPEN
  20. 43  'SCREENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENLOAD
  21. 55  '        *****  < F2 > to RUN  *******  < F10 > For BLUEMENU  *****
  22. 57  ' ====== To avoid DOCUMENTATION BOX each time, REM or DELETE  line 5 ======
  23. 60  CLS
  24. 100  FOR I! = 1 TO 10
  25. 110    KEY I!,""
  26. 120  NEXT
  27. 130  CLS
  28. 140  SCREEN 0,0,0
  29. 150  WIDTH 80
  30. 160  CLEAR 100
  31. 170  KEY OFF
  32. 180  COLOR 7,0
  33. 190  GOSUB 4860
  34. 200  ON ERROR GOTO 5090
  35. 210  LPRINT CLEANUP$;
  36. 220  MP$ = "#,###.##"
  37. 230  DEFSTRA-H
  38. 240  DEFINTK-X
  39. 250  DEFSTRZ
  40. 260  :REMWORKFILE FOR ESTABLISHING BASIC JOURNAL ENTRIES FOR TOTAL GL PROGRAMS
  41. 270  DIM A$(100),B$(100),C$(100),D$(100),E$(100),F$(100),G$(100),H$(100),I!(100),J!(100),N1%(100),N2%(100),X%(100),NF%(100)
  42. 280  A$ = ""
  43. 290  B$ = ""
  44. 300  C$ = ""
  45. 310  D$ = ""
  46. 320  E$ = ""
  47. 330  F$ = ""
  48. 340  G$ = ""
  49. 350  H$ = ""
  50. 360  N1% = 100
  51. 370  N2% = 100
  52. 380  Z1$ = CHR$(30)
  53. 390  Z2$ = CHR$(31)
  54. 400  Z3$ = CHR$(27)
  55. 410  Z4$ = CHR$(140)
  56. 420  ON ERROR GOTO 4710
  57. 430  CLS
  58. 440  PRINT FRE(X%)
  59. 450  PRINT
  60. 460  PRINT
  61. 470  LOCATE 5,35
  62. 480  PRINT Z1$;
  63. 490  PRINT "MAIN MENU ";
  64. 500  LOCATE 6,1
  65. 510  PRINT Z2$
  66. 520  PRINT TAB( 30)"1.  START NEW RECORDS"
  67. 530  PRINT TAB( 30)"2.  LOAD RECORDS FROM DISK"
  68. 540  PRINT TAB( 30)"3.  REVIEW FILE RECORDS"
  69. 550  PRINT TAB( 30)"4.  CHANGE RECORDS"
  70. 560  PRINT TAB( 30)"5.  ADD RECORDS TO OLD FILE"
  71. 570  PRINT TAB( 30)"6.  SAVE RECORDS ON DISK"
  72. 580  PRINT TAB( 30)"7.  PRINT REPORT"
  73. 590  PRINT TAB( 30)"8.  LOAD G.L. MENU."
  74. 600  PRINT TAB( 30)"9.  END PROGRAM"
  75. 610  PRINT
  76. 620  PRINT TAB( 35)"SELECTION ";
  77. 630  INPUT X%
  78. 640  IF X% < 1 OR X% > 9 THEN 610 ELSE 650
  79. 650  ON X% GOTO 660,2270,1350,1490,2610,3250,3650,3580,4460
  80. 660  REM********************  ADD RECORDS  *********************************
  81. 670  FOR I! = 2 TO N1%
  82. 680    KEY OFF
  83. 690    CLS
  84. 700    LOCATE 22,1
  85. 710    PRINT STRING$(80,205)
  86. 720    LOCATE 24,1
  87. 730    PRINT STRING$(80,205)
  88. 740    LOCATE 21,10
  89. 750    PRINT (I!)
  90. 760    LOCATE 21,20
  91. 770    PRINT "";
  92. 780    LINE INPUT "DATE <MM/DD>: ";A$(I!)
  93. 790    GOSUB 1320
  94. 800    IF (A$(I!) = "END") OR (B$(I!) = "END") THEN N1% = I!
  95. 810    IF (A$(I!) = "END") OR (B$(I!) = "END") THEN 1290
  96. 820    GOSUB 4620
  97. 830    NF% = I!
  98. 840    LOCATE 6,1
  99. 850    WRITE NF%
  100. 860    LOCATE 6,7
  101. 870    PRINT A$(I!)
  102. 880    LOCATE 21,20
  103. 890    PRINT "";
  104. 900    LINE INPUT "CHECK #: ";B$(I!)
  105. 910    LOCATE 6,15
  106. 920    PRINT B$(I!)
  107. 930    IF (A$(I!) = "END") OR (B$(I!) = "END") THEN N1% = I!
  108. 940    IF (A$(I!) = "END") OR (B$(I!) = "END") THEN 1290
  109. 950    LOCATE 21,20
  110. 960    PRINT "";
  111. 970    LINE INPUT "DESCRIPTION: ";C$(I!)
  112. 980    GOSUB 1320
  113. 990    LOCATE 6,26
  114. 1000    PRINT C$(I!)
  115. 1010    LOCATE 21,20
  116. 1020    PRINT "";
  117. 1030    LINE INPUT "TO/FROM: ";D$(I!)
  118. 1040    GOSUB 1320
  119. 1050    LOCATE 6,44
  120. 1060    PRINT D$(I!)
  121. 1070    LOCATE 21,20
  122. 1080    PRINT "";
  123. 1090    INPUT "DEBIT & CREDIT ACCT #'S: ";E$(I!),F$(I!)
  124. 1100    GOSUB 1320
  125. 1110    LOCATE 6,61
  126. 1120    PRINT E$(I!)
  127. 1130    LOCATE 6,68
  128. 1140    PRINT F$(I!)
  129. 1150    LOCATE 21,20
  130. 1160    PRINT "";
  131. 1170    LINE INPUT "AMOUNT:       ";G$(I!)
  132. 1180    GOSUB 1320
  133. 1190    LOCATE 6,73
  134. 1200    PRINT G$(I!)
  135. 1210    Y$ = ""
  136. 1220    LOCATE 10,20
  137. 1230    PRINT "IS INPUT CORRECT ";
  138. 1240    INPUT Y$
  139. 1250    IF Y$ = CHR$(89) THEN 1280 : IF Y$ = CHR$(121) THEN 1280
  140. 1260    IF Y$ = CHR$(78) THEN 680 : IF Y$ = CHR$(110) THEN 680
  141. 1270    GOTO 1210
  142. 1280  NEXT
  143. 1290  N2% = N1%
  144. 1300  GOTO 430
  145. 1310  REM         * * * * * *   CLEAR ENTRY ROUTINE   * * * * * *
  146. 1320  LOCATE 21,20
  147. 1330  PRINT STRING$(60,32)
  148. 1340  RETURN
  149. 1350  REM********************  REVIEW OLD FILES  ****************************
  150. 1360  CLS
  151. 1370  IF A$(2) = "" THEN 4550
  152. 1380  GOSUB 4620
  153. 1390  FOR J! = 1 TO 50
  154. 1400    FOR I! = 2 TO N2%
  155. 1410      NF% = I!
  156. 1420      PRINT TAB( 1);NF%; TAB( 7);A$(I!); TAB( 15);B$(I!); TAB( 26);C$(I!); TAB( 44);D$(I!); TAB( 61);E$(I!); TAB( 68);F$(I!); TAB( 73);G$(I!)
  157. 1430    NEXT I!
  158. 1440    PRINT TAB( 30)"";
  159. 1450    INPUT "<ENTER> TO CONTINUE ";X%
  160. 1460    IF (A$(N2%) = "END") OR (B$(N2%) = "END") THEN 430
  161. 1470    IF B$(2) = "" THEN 430
  162. 1480  NEXT J!
  163. 1490  REM**********************  CHANGE RECORDS  ****************************
  164. 1500  IF A$(2) = "" GOTO 4550
  165. 1510  CLS
  166. 1520  I! = N2%
  167. 1530  N3% = 0
  168. 1540  LOCATE 10,20
  169. 1550  PRINT "";
  170. 1560  INPUT "WHAT RECORD NUMBER TO CHANGE ";N3%
  171. 1570  CLS
  172. 1580  IF (N3% < 2) OR (N3% > N2%) THEN LOCATE 11,20 : PRINT "MUST BE GREATER THAN 002 OR LESS THAN N2" : GOTO 1520
  173. 1590  I! = N3%
  174. 1600  GOSUB 4620
  175. 1610  LOCATE 6,1
  176. 1620  WRITE N3%
  177. 1630  LOCATE 6,7
  178. 1640  PRINT ;A$(N3%); TAB( 15);B$(N3%); TAB( 26);C$(N3%); TAB( 44);D$(N3%); TAB( 61);E$(N3%); TAB( 68);F$(N3%); TAB( 73);G$(N3%)
  179. 1650  A$ = ""
  180. 1660  LOCATE 15,20
  181. 1670  PRINT "";
  182. 1680  INPUT "IS THIS THE RECORD YOU WANT TO CHANGE ";A$
  183. 1690  IF (A$ = CHR$(89)) OR (A$ = CHR$(121)) THEN 1710
  184. 1700  IF (A$ = CHR$(78)) OR (A$ = CHR$(110)) THEN 430
  185. 1710  LOCATE 21,1
  186. 1720  PRINT STRING$(80,205)
  187. 1730  LOCATE 23,1
  188. 1740  PRINT STRING$(80,205)
  189. 1750  LOCATE 21,10
  190. 1760  PRINT (I!)
  191. 1770  LOCATE 21,20
  192. 1780  PRINT "";
  193. 1790  LINE INPUT "DATE <MM/DD>: ";A$(N3%)
  194. 1800  GOSUB 1320
  195. 1810  NF% = I!
  196. 1820  LOCATE 6,1
  197. 1830  WRITE NF%
  198. 1840  LOCATE 6,7
  199. 1850  PRINT A$(N3%)
  200. 1860  LOCATE 21,20
  201. 1870  PRINT "";
  202. 1880  LINE INPUT "CHECK #: ";B$(N3%)
  203. 1890  GOSUB 1320
  204. 1900  LOCATE 6,15
  205. 1910  PRINT B$(N3%)
  206. 1920  LOCATE 21,20
  207. 1930  PRINT "";
  208. 1940  LINE INPUT "DESCRIPTION: ";C$(N3%)
  209. 1950  GOSUB 1320
  210. 1960  LOCATE 6,26
  211. 1970  PRINT C$(N3%)
  212. 1980  LOCATE 21,20
  213. 1990  PRINT "";
  214. 2000  LINE INPUT "TO/FROM: ";D$(N3%)
  215. 2010  GOSUB 1320
  216. 2020  LOCATE 6,44
  217. 2030  PRINT D$(N3%)
  218. 2040  LOCATE 21,20
  219. 2050  PRINT "";
  220. 2060  INPUT "DEBIT & CREDIT ACCT #'S: ";E$(N3%),F$(N3%)
  221. 2070  GOSUB 1320
  222. 2080  LOCATE 6,61
  223. 2090  PRINT E$(N3%)
  224. 2100  LOCATE 6,68
  225. 2110  PRINT F$(N3%)
  226. 2120  LOCATE 21,20
  227. 2130  PRINT "";
  228. 2140  LINE INPUT "$$ AMOUNT:    ";G$(N3%)
  229. 2150  GOSUB 1320
  230. 2160  LOCATE 6,73
  231. 2170  PRINT G$(N3%)
  232. 2180  Y$ = ""
  233. 2190  LOCATE 10,20
  234. 2200  PRINT STRING$(60,32)
  235. 2210  LOCATE 10,20
  236. 2220  PRINT "IS INPUT CORRECT ";
  237. 2230  INPUT Y$
  238. 2240  IF (Y$ = CHR$(89)) OR (Y$ = CHR$(121)) THEN 430
  239. 2250  IF (Y$ = CHR$(78)) OR (Y$ = CHR$(110)) THEN 1750
  240. 2260  GOTO 2180
  241. 2270  REM*************************  INPUTS DISK TO MEMORY  ******************
  242. 2280  REM********************* SAVED IN ASCII AS MEMLOAD.GL1 ****************
  243. 2290  CLS
  244. 2300  LOCATE 10,25
  245. 2310  PRINT "W A R N I N G"
  246. 2320  LOCATE 11,25
  247. 2330  PRINT "THENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHEN"
  248. 2340  LOCATE 13,25
  249. 2350  PRINT "THIS WILL LOAD OVER WHAT IS NOW IN MEMORY"
  250. 2360  LOCATE 15,25
  251. 2370  PRINT "<ENTER 1> TO CONTINUE"
  252. 2380  LOCATE 17,25
  253. 2390  PRINT "<ENTER 2> TO RETURN TO MENU"
  254. 2400  LOCATE 19,25
  255. 2410  PRINT "";
  256. 2420  INPUT "CHOICE";X%
  257. 2430  IF (X% < 1) OR (X% > 2) THEN 2360 ELSE 2440
  258. 2440  ON X% GOTO 2450,430
  259. 2450  CLS
  260. 2460  LOCATE 10,25
  261. 2470  PRINT "WHAT IS FILESPEC$  ";
  262. 2480  INPUT FS$
  263. 2490  LOCATE 12,25
  264. 2500  PRINT "L O A D I N G"
  265. 2510  :REM********************  ACTUAL WRITE ROUTINE  ************************
  266. 2520  OPEN "I",1,FS$
  267. 2530  INPUT #1,N2%
  268. 2540  FOR I! = 2 TO N2%
  269. 2550    INPUT #1,A$(I!),B$(I!),C$(I!),D$(I!),E$(I!),F$(I!),G$(I!)
  270. 2560    IF EOF(1) THEN CLOSE  : CLS  : LOCATE 10,20 : PRINT "LOADED TO EOF" : FOR L% = 1 TO 1000 : NEXT L% : GOTO 430
  271. 2570  NEXT I!
  272. 2580  ON ERROR GOTO 4710
  273. 2590  IF (A$(I!) = "END") OR (B$(I!) = "END") THEN CLOSE  : CLS  : LOCATE 10,20 : PRINT "SAVED END" : FOR L% = 1 TO 1000 : NEXT L% : GOTO 430
  274. 2600  GOTO 430
  275. 2610  REM************************  ADD RECORDS TO FILE  ********************
  276. 2620  N5% = N2%
  277. 2630  N1% = 300
  278. 2640  FOR I! = N5% TO N1%
  279. 2650    CLS
  280. 2660    GOSUB 4620
  281. 2670    LOCATE 20,1
  282. 2680    PRINT STRING$(80,205)
  283. 2690    LOCATE 22,1
  284. 2700    PRINT STRING$(80,205)
  285. 2710    LOCATE 21,10
  286. 2720    PRINT (I!)
  287. 2730    LOCATE 21,20
  288. 2740    PRINT "";
  289. 2750    LINE INPUT "DATE <MM/DD>: ";A$(I!)
  290. 2760    GOSUB 1320
  291. 2770    GOSUB 4620
  292. 2780    NF% = I!
  293. 2790    LOCATE 6,1
  294. 2800    WRITE NF%
  295. 2810    LOCATE 6,7
  296. 2820    PRINT A$(I!)
  297. 2830    LOCATE 21,20
  298. 2840    PRINT "";
  299. 2850    LINE INPUT "CHECK #: ";B$(I!)
  300. 2860    LOCATE 6,15
  301. 2870    PRINT B$(I!)
  302. 2880    IF (A$(I!) = "END") OR (B$(I!) = "END") THEN N1% = I!
  303. 2890    IF (A$(I!) = "END") OR (B$(I!) = "END") THEN 3230
  304. 2900    LOCATE 21,20
  305. 2910    PRINT "";
  306. 2920    LINE INPUT "DESCRIPTION: ";C$(I!)
  307. 2930    GOSUB 1320
  308. 2940    LOCATE 6,26
  309. 2950    PRINT C$(I!)
  310. 2960    LOCATE 21,20
  311. 2970    PRINT "";
  312. 2980    LINE INPUT "TO/FROM: ";D$(I!)
  313. 2990    GOSUB 1320
  314. 3000    LOCATE 6,44
  315. 3010    PRINT D$(I!)
  316. 3020    LOCATE 21,20
  317. 3030    PRINT "";
  318. 3040    INPUT "DEBIT & CREDIT ACCT #'S: ";E$(I!),F$(I!)
  319. 3050    GOSUB 1320
  320. 3060    LOCATE 6,61
  321. 3070    PRINT E$(I!)
  322. 3080    LOCATE 6,68
  323. 3090    PRINT F$(I!)
  324. 3100    LOCATE 21,20
  325. 3110    PRINT "";
  326. 3120    LINE INPUT "$$$ AMOUNT:   ";G$(I!)
  327. 3130    GOSUB 1320
  328. 3140    LOCATE 6,73
  329. 3150    PRINT G$(I!)
  330. 3160    Y$ = ""
  331. 3170    LOCATE 10,20
  332. 3180    PRINT "IS INPUT CORRECT ";
  333. 3190    INPUT Y$
  334. 3200    IF (Y$ = CHR$(89)) OR (Y$ = CHR$(121)) THEN 3220
  335. 3210    IF (Y$ = CHR$(78)) OR (Y$ = CHR$(110)) THEN 2710
  336. 3220  NEXT I!
  337. 3230  N2% = N1%
  338. 3240  GOTO 430
  339. 3250  REM**********************  WRITES MEMORY TO DISK  ********************
  340. 3260  CLS
  341. 3270  IF A$(2) = "" THEN 4550
  342. 3280  CLS
  343. 3290  LOCATE 10,25
  344. 3300  PRINT "W A R N I N G"
  345. 3310  LOCATE 11,25
  346. 3320  PRINT "THENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHEN"
  347. 3330  LOCATE 13,25
  348. 3340  PRINT "THIS WILL WRITE OVER WHAT IS NOW ON DISK"
  349. 3350  LOCATE 15,25
  350. 3360  PRINT "<ENTER 1> TO CONTINUE"
  351. 3370  LOCATE 17,25
  352. 3380  PRINT "<ENTER 2> TO RETURN TO MENU"
  353. 3390  LOCATE 19,25
  354. 3400  PRINT "";
  355. 3410  INPUT "CHOICE";Y!
  356. 3420  IF (Y! < 1) OR (Y! > 2) THEN 3420 ELSE 3430
  357. 3430  ON Y! GOTO 3440,430
  358. 3440  CLS
  359. 3450  LOCATE 10,25
  360. 3460  PRINT "WHAT IS FILESPEC$  ";
  361. 3470  INPUT FS$
  362. 3480  LOCATE 12,25
  363. 3490  PRINT "S A V I N G"
  364. 3500  :REM***********************  ACTUAL WRITE ROUTINE  ********************
  365. 3510  OPEN "O",1,FS$
  366. 3520  WRITE #1,N2%
  367. 3530  FOR I! = 2 TO N2%
  368. 3540    WRITE #1,A$(I!),B$(I!),C$(I!),D$(I!),E$(I!),F$(I!),G$(I!)
  369. 3550    IF A$(I!) = "END" THEN CLOSE  : CLS  : LOCATE 10,20 : PRINT "SAVED END" : FOR L% = 1 TO 1000 : NEXT L% : GOTO 430
  370. 3560  NEXT I!
  371. 3570  ON ERROR GOTO 4710
  372. 3580  REM***********************  START GL PROGRAM SERIES  *****************
  373. 3590  CLS
  374. 3600  LOCATE 20,10
  375. 3610  PRINT "General Ledger Program not available as part of BLUEBERRY PIE A La MODE"
  376. 3620  FOR I! = 1 TO 3000
  377. 3630  NEXT
  378. 3640  GOTO 430
  379. 3650  CLS
  380. 3660  :REM****************  REPORT PRINT ROUTINE  ************************
  381. 3670  REM*****************  FULL PRINT OUT  ********************************
  382. 3680  CLS
  383. 3690  LOCATE 8,30
  384. 3700  PRINT "SET UP PRINTER AND PAPER."
  385. 3710  LOCATE 10,30
  386. 3720  PRINT "IS FILE LOADED ?"
  387. 3730  LOCATE 12,30
  388. 3740  PRINT "<ENTER 1> TO CONTINUE"
  389. 3750  LOCATE 14,30
  390. 3760  PRINT "<ENTER 2> FOR MENU  ";
  391. 3770  INPUT X%
  392. 3780  ON X% GOTO 3790,430
  393. 3790  CLS
  394. 3800  LOCATE 10,30
  395. 3810  PRINT "DO YOU WANT FULL PRINT OUT OR BY MONTH?"
  396. 3820  LOCATE 12,30
  397. 3830  PRINT "<ENTER 1> FOR FULL PRINT OUT"
  398. 3840  PRINT
  399. 3850  LOCATE 14,30
  400. 3860  PRINT "<ENTER 2> IF BY MONTH ";
  401. 3870  INPUT X%
  402. 3880  ON X% GOTO 3890,4140
  403. 3890  L% = 0
  404. 3900  LPRINT STRING$(5,10)
  405. 3910  L% = 5
  406. 3920  LPRINT ITALIC$;
  407. 3930  LPRINT DARK$;
  408. 3940  LPRINT TAB( 20)"FULL PRINTOUT FOR YEAR TO DATE";END.ITALIC$
  409. 3950  LPRINT STRING$(2,10)
  410. 3960  L% = 7
  411. 3970  GOSUB 4670
  412. 3980  L% = 9
  413. 3990  FOR J! = 1 TO 50
  414. 4000    FOR I! = 2 TO N2%
  415. 4010      NF% = I!
  416. 4020      LPRINT TAB( 1);NF%; TAB( 7);A$(I!); TAB( 15);B$(I!); TAB( 26);C$(I!); TAB( 44);D$(I!); TAB( 61);E$(I!); TAB( 68);F$(I!); TAB( 73);G$(I!)
  417. 4030      L% = L% + 1
  418. 4040      IF L% = 60 THEN LPRINT CHR$(12) : LPRINT STRING$(5,10) : L% = 5
  419. 4050    NEXT I!
  420. 4060    PRINT TAB( 30)"";
  421. 4070    INPUT "<ENTER> TO CONTINUE ";X%
  422. 4080    IF (A$(N2%) = "END") OR (B$(N2%) = "END") THEN 430
  423. 4090    IF B$(100) = "" THEN 430
  424. 4100    LPRINT CHR$(12)
  425. 4110    LPRINT STRING$(4,10)
  426. 4120  NEXT J!
  427. 4130  GOTO 430
  428. 4140  REM**************  MONTH SELECT PRINT OUT  ***************************
  429. 4150  CLS
  430. 4160  LOCATE 10,25
  431. 4170  PRINT "THIS WILL PRINT OUT BY MONTH SELECTION"
  432. 4180  PRINT
  433. 4190  PRINT TAB( 25)"<ENTER 1> TO CONTINUE"
  434. 4200  PRINT
  435. 4210  PRINT TAB( 25)"<ENTER 2> TO RETURN TO MENU ";
  436. 4220  INPUT X%
  437. 4230  ON X% GOTO 4240,430
  438. 4240  PRINT
  439. 4250  PRINT TAB( 25)"WHAT MONTH (ENTER 3 LETTERS -- I.E. JAN,FEB)"
  440. 4260  PRINT
  441. 4270  PRINT TAB( 25);
  442. 4280  INPUT "MONTH ABBREVIATION: ";MO$
  443. 4290  LPRINT ITALIC$;DARK$;
  444. 4300  LPRINT TAB( 25);"PRINT OUT BY MONTH -- 1982";END.ITALIC$;
  445. 4310  LPRINT STRING$(2,10)
  446. 4320  GOSUB 4670
  447. 4330  FOR J! = 1 TO 50
  448. 4340    FOR I! = 2 TO N2%
  449. 4350      NF% = I!
  450. 4360      IF LEFT$(A$(I!),3) = MO$ THEN LPRINT TAB( 1);NF%; TAB( 7);A$(I!); TAB( 15);B$(I!); TAB( 26);C$(I!); TAB( 44);D$(I!); TAB( 61);E$(I!); TAB( 68);F$(I!); TAB( 73);G$(I!)
  451. 4370      IF A$(2) = "" THEN 430
  452. 4380    NEXT I!
  453. 4390    PRINT
  454. 4400    PRINT TAB( 30)"";
  455. 4410    INPUT "<ENTER> TO CONTINUE ";X%
  456. 4420    IF (A$(N2%) = "END") OR (B$(N2%) = "END") THEN 430
  457. 4430  NEXT J!
  458. 4440  LPRINT "REF#  DATE   CHECK #     DESCRIPTION   TO/FROM   D#    C#    $$ AMOUNT"
  459. 4450  GOTO 430
  460. 4460  REM******************  TERMINATION  **********************************
  461. 4470  CLS
  462. 4480  Y$ = ""
  463. 4490  LOCATE 10,20
  464. 4500  PRINT "HAVE YOU SAVED YOUR FILE ";
  465. 4510  INPUT AY$
  466. 4520  IF (Y$ = CHR$(89)) OR (Y$ = CHR$(121)) THEN 4540
  467. 4530  IF (Y$ = CHR$(78)) OR (Y$ = CHR$(110)) THEN 430
  468. 4540  END
  469. 4550  REM*****************  EMPTY FILE CHECK  ******************************
  470. 4560  CLS
  471. 4570  LOCATE 10,30
  472. 4580  PRINT "NO RECORDS IN FILE"
  473. 4590  FOR I! = 1 TO 1000
  474. 4600  NEXT
  475. 4610  GOTO 430
  476. 4620  REM***********  HEADING ROUITINE -- SCREEN PRINT  ********************
  477. 4630  LOCATE 2,1
  478. 4640  PRINT "REF#  DATE    CHECK #    DESCRIPTION       TO/FROM          D#     C#  $$ AMOUNT";
  479. 4650  PRINT "THENTHENTHENTHEN  THENTHENTHENTHENTHEN   THENTHENTHENTHENTHENTHENTHEN    THENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHEN     THENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHEN  THENTHENTHENTHEN   THENTHENTHENTHEN THENTHENTHENTHENTHENTHENTHENTHENTHEN"
  480. 4660  RETURN
  481. 4670  REM************  HEADING ROUTINE -- PRINT OUT ************************
  482. 4680  LPRINT "REF#  DATE    CHECK #    DESCRIPTION       TO/FROM          D#     C#  $$ AMOUNT";
  483. 4690  LPRINT "----  -----   -------    -------------     --------------  ----   ---- ---------"
  484. 4700  RETURN
  485. 4710  REM*****************  ERROR REPORT ROUTINE  **************************
  486. 4720  CLS
  487. 4730  CLOSE
  488. 4740  LOCATE 10,30
  489. 4750  PRINT "ERROR TRAP"
  490. 4760  LOCATE 12,30
  491. 4770  PRINT "ERROR IS IN LINE "; ERL
  492. 4780  LOCATE 14,30
  493. 4790  PRINT "ERROR IS "; ERR
  494. 4800  LOCATE 16,30
  495. 4810  PRINT "PRESS <ENTER> TO CONTINUE ";
  496. 4820  INPUT X%
  497. 4830  RESUME 430
  498. 4840  CLOSE
  499. 4850  END
  500. 4860  REM **** PRINTER SUBROUTINES ***
  501. 4870  SMALL$ = CHR$(15)
  502. 4880  UNSMALL$ = CHR$(18)
  503. 4890  EXPAND.SMALL$ = CHR$(14) + CHR$(15)
  504. 4900  CANX.EXP.COMP$ = CHR$(18) + CHR$(20)
  505. 4910  EXPAND$ = CHR$(14)
  506. 4920  EXPAND.END$ = CHR$(20)
  507. 4930  DARK$ = CHR$(27) + CHR$(69)
  508. 4940  ITALIC$ = CHR$(27) + CHR$(52)
  509. 4950  ITALIC.EXP.CON$ = CHR$(14) + CHR$(15) + CHR$(27) + CHR$(52)
  510. 4960  ITALIC.EXP$ = CHR$(27) + CHR$(52) + CHR$(14)
  511. 4970  END.ITALIC$ = CHR$(27) + CHR$(53)
  512. 4980  START.ULINE$ = CHR$(27) + CHR$(45) + CHR$(1)
  513. 4990  END.ULINE$ = CHR$(27) + CHR$(45) + CHR$(0)
  514. 5000  PERM.EXPAN$ = CHR$(27) + CHR$(87) + CHR$(1)
  515. 5010  END.PERMEXP$ = CHR$(27) + CHR$(87) + CHR$(0)
  516. 5020  START.DSTRIKE$ = CHR$(27) + CHR$(71)
  517. 5030  END.DSTRIKE$ = CHR$(27) + CHR$(72)
  518. 5040  TINYLINE$ = CHR$(27) + CHR$(83) + CHR$(0)
  519. 5050  END.TINY$ = CHR$(27) + CHR$(84)
  520. 5060  ESC$ = CHR$(27)
  521. 5070  CLEANUP$ = CHR$(27) + CHR$(64)
  522. 5080  RETURN
  523. 5090  REM ********* PRINTER ERROR ROUTINE ***************
  524. 5100  IF ERR = 24 THEN 5130 ELSE 5110
  525. 5110  IF ERR = 25 THEN 5130 ELSE 5120
  526. 5120  ON ERROR GOTO 0
  527. 5130  KEY OFF
  528. 5140  BEEP
  529. 5150  BEEP
  530. 5160  LOCATE 25,1
  531. 5170  PRINT SPC( 79)
  532. 5180  LOCATE 25,20
  533. 5190  PRINT "CHECK PRINTER - PRESS ANY KEY TO CONTINUE"
  534. 5200  IF INKEY$ = "" THEN 5200
  535. 5210  KEY ON
  536. 5220  RESUME
  537. 5230  END
  538. 65000  REM**********************  DISK SAVE ROUTINE *************************
  539. 65100  SAVE "B:WORKFILE.BAS"
  540.